home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / HENSA / MATHS / PLPLOT / PLPLOT.ZIP / sys / amiga / src / plamiga.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-08-23  |  2.8 KB  |  119 lines

  1. /* $Id: plamiga.h,v 1.5 1994/08/23 16:39:03 mjl Exp $
  2.  * $Log: plamiga.h,v $
  3.  * Revision 1.5  1994/08/23  16:39:03  mjl
  4.  * Minor fixes to work with PLplot 4.99h distribution and other cleaning up.
  5.  *
  6.  * Revision 1.4  1994/03/23  08:56:55  mjl
  7.  * Added prototype for plamiga_saveiff().
  8. */
  9.  
  10. /* These are needed by GadTools-generated display routines */
  11.  
  12. #include <exec/types.h>
  13. #include <intuition/intuition.h>
  14. #include <intuition/classes.h>
  15. #include <intuition/classusr.h>
  16. #include <intuition/imageclass.h>
  17. #include <intuition/gadgetclass.h>
  18. #include <libraries/gadtools.h>
  19. #include <graphics/displayinfo.h>
  20. #include <graphics/gfxbase.h>
  21. #include <clib/exec_protos.h>
  22. #include <clib/intuition_protos.h>
  23. #include <clib/gadtools_protos.h>
  24. #include <clib/graphics_protos.h>
  25. #include <clib/utility_protos.h>
  26.  
  27. /* Everything else */
  28. /* Includes header files for using reqtools.library and iff.library */
  29.  
  30. #include <libraries/reqtools.h>
  31. #include <libraries/iff.h>
  32. #include <proto/dos.h>
  33. #include <proto/reqtools.h>
  34.  
  35. extern struct IntuiMessage   PlplotMsg;
  36.  
  37. /*
  38. * This structure holds just about everything needed to describe the drawing
  39. * area, including window, screen, geometry, etc.  
  40. */
  41.  
  42. typedef struct {
  43.     int            exit_eventloop;
  44.     int            restart;
  45.  
  46.     long        init_width;
  47.     long        init_height;
  48.     long        cur_width;
  49.     long        cur_height;
  50.     long        xoffset;
  51.     long        yoffset;
  52.  
  53.     double        xscale;
  54.     double        yscale;
  55.     double        xscale_dev;
  56.     double        yscale_dev;
  57.  
  58.     struct Screen    *screen;
  59.     struct Window    *window;
  60.     struct Menu         *menus;
  61.     APTR        visual;
  62.  
  63.     struct TextAttr    *font;
  64.  
  65.     WORD        scr_left;
  66.     WORD        scr_top;
  67.     WORD        scr_width;
  68.     WORD        scr_height;
  69.     UWORD        scr_depth;
  70.     UWORD        scr_type;
  71.     long        scr_displayID;
  72.     long        maxcolors;
  73.  
  74.     struct RastPort     *SRPort;    /* Screen rastport */
  75.     struct RastPort     *WRPort;    /* Window rastport */
  76.     struct ViewPort     *VPort;
  77.     struct ColorMap     *CMap;
  78.  
  79. } PlAmigaWin;
  80.  
  81. extern PlAmigaWin *pla;
  82.  
  83. extern struct IntuitionBase *IntuitionBase;
  84. extern struct GfxBase *GfxBase;
  85. extern struct ReqToolsBase *ReqToolsBase;
  86. extern struct Library *IFFBase;
  87.  
  88. /* Function prototypes */
  89.  
  90. int  HandlePlplotIDCMP    (void);
  91.  
  92. void  pla_InitDisplay    (void);
  93. int   pla_OpenScreen    (void);
  94. void  pla_CloseScreen    (void);
  95. int   pla_OpenWindow    (void);
  96. void  pla_CloseWindow    (void);
  97. void  pla_SetFont    (void);
  98.  
  99. void  pla_OpenLibs    (void);
  100. void  pla_CloseLibs    (void);
  101.  
  102. int
  103. plamiga_saveiff(char *filename);
  104.  
  105. void  dmpport        (long, int, int);
  106. int   openprinter    (void);
  107. void  closeprinter    (void);
  108. int   queryprint    (long *, long *, long *, long *, long *, long *);
  109. void  ejectpage        (void);
  110. void  screendump    (PLINT type);
  111.  
  112. int   mapinit        (long bmapx, long bmapy);
  113. void  mapclear        (void);
  114. void  mapfree        (void);
  115. void  mapline        (register int x1, register int y1,
  116.              register int x2, register int y2);
  117. void  iffwritefile    (PLINT xdpi, PLINT ydpi, FILE *File);
  118.  
  119.